package com.glacier.yuyuan.modules.admin.sys.mapper;

import com.glacier.yuyuan.modules.admin.sys.domain.RoleOffice;
import org.apache.ibatis.annotations.Param;

import java.io.Serializable;
import java.util.Collection;
import java.util.List;

/**
 * date 2023-01-07 17:32
 * 角色机构 mapper
 *
 * @author glacier
 * @version 1.0.0
 */
public interface RoleOfficeMapper<ID extends Serializable> {

    /**
     * 查询数据列表
     *
     * @param roleId
     * @return
     */
    List<String> findListByRoleId(@Param("roleId") ID roleId);

    /**
     * 查询数据列表
     *
     * @param officeId
     * @return
     */
    List<String> findListByOfficeId(@Param("officeId") ID officeId);

    /**
     * 插入数据
     *
     * @param entitys
     * @return
     */
    int batchInsert(@Param("entitys") Collection<RoleOffice> entitys);

    /**
     * 根据角色id 删除
     *
     * @param idList
     * @return
     */
    int deleteByRoleIds(@Param("idList") List<ID> idList);

    /**
     * 根据机构id 删除
     *
     * @param idList
     * @return
     */
    int deleteByOfficeIds(@Param("idList") List<ID> idList);

}
